package com.xoa.controller.equipment;


import com.xoa.model.equipment.LimsEquipReparlog;
import com.xoa.service.equipment.EquipReparlogService;
import com.xoa.util.LimsJson;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;

import javax.servlet.http.HttpServletRequest;




@Controller
@RequestMapping("/equipment")
public class EquipReparlogController {
    @Autowired
    public EquipReparlogService equipReparlogService;

    /**
     * 创建作者:   李卫卫
     * 创建日期:   19:54 2019/11/06
     * 方法介绍:    设备维修主页
     * 参数说明:   No such property: code for class: Script1
     * @return     com.xoa.util.lims.LimsJson
     */
    @RequestMapping("/servicing")
    public String index(){
        return "/app/equipment/equipmentRepair/index";
    }

    /**
     * 添加报修页面映射
     * @return
     */
    @RequestMapping("/addServicing")
    public String addrepair(){
        return "/app/equipment/equipmentRepair/addrepair";
    }

    /**
     * 选择设备页面映射
     * @return
     */
    @RequestMapping("/selectEquipair")
    public String selectEquipair(){
        return "/app/equipment/equipmentRepair/selectEquipair";
    }

    /**
     * 执行维修页面映射
     * @return
     */
    @RequestMapping("/execution")
    public String execution(){
        return "/app/equipment/equipmentRepair/execution";
    }

    /**
     * 维修验证页面映射
     * @return
     */
    @RequestMapping("/verifquip")
    public String verifquip(){
        return "/app/equipment/equipmentRepair/verificationequip";
    }

    /**
     * 创建作者:   李卫卫
     * 创建日期:   19:54 2019/11/06
     * 方法介绍:    查看设备明细详情信息
     * 参数说明:   No such property: code for class: Script1
     * @return     com.xoa.util.lims.LimsJson
     */

    @RequestMapping("/findInvenByDetailId")
    @ResponseBody
    public LimsJson findInvenByDetailId(HttpServletRequest request, Integer repalogId){

        return equipReparlogService.findInvenByDetailId(request,repalogId);
    }

    /**
     * 创建作者:   李卫卫
     * 创建日期:   19:54 2019/11/06
     * 方法介绍:    删除设备明细详情信息
     * 参数说明:   No such property: code for class: Script1
     * @return     com.xoa.util.lims.LimsJson
     */

    @RequestMapping("/deleteLimsEquipReparlogById")
    @ResponseBody
    public LimsJson<LimsEquipReparlog> deleteLimsEquipReparlogById(HttpServletRequest request, Integer repalogId){
        return equipReparlogService.deleteLimsEquipReparlog(request,repalogId);
    }

    /**
     * 创建作者:   李卫卫
     * 创建日期:   19:54 2019/11/06
     * 方法介绍:    新增设备明细详情信息
     * 参数说明:   No such property: code for class: Script1
     * @return     com.xoa.util.lims.LimsJson
     */

    @RequestMapping("/addParentEquipReparlog")
    @ResponseBody
    public LimsJson<LimsEquipReparlog> addParentEquipmentType(HttpServletRequest request,LimsEquipReparlog limsEquipReparlog){
        request.getParameter("limsEquipReparlog");
        return equipReparlogService.addParentLimsEquipReparlog(request, limsEquipReparlog);
    }

    /**
     * 创建作者:   李卫卫
     * 创建日期:   19:54 2019/11/06
     * 方法介绍:    根据下拉框条件以及输入参数模糊查询 字段 值
     * 参数说明:   No such property: code for class: Script1
     * @return     com.xoa.util.lims.LimsJson
     */

    @RequestMapping("/selectByEquipReparlogt")
    @ResponseBody
    public LimsJson<LimsEquipReparlog>  selectByEquipReparlogt (HttpServletRequest request,String FieldName,String FieldValue,Integer page, Integer  limit,String repairStatus){
        return equipReparlogService.selectExperienceByName(request,FieldName,FieldValue,page,limit,repairStatus);
    }

    /**
     * 创建作者:   李卫卫
     * 创建日期:   19:54 2019/11/07
     * 方法介绍:     查询全部数据分页
     * 参数说明:   No such property: code for class: Script1
     * @return     com.xoa.util.lims.LimsJson
     */
    @RequestMapping("/selectEquipReparlogt")
    @ResponseBody
    public LimsJson<LimsEquipReparlog> selectEquipReparlog(HttpServletRequest request, Integer page, Integer  limit){
        return equipReparlogService.selectEquipReparlog(request,page,limit);
    }


    /**
     * 创建作者:   李卫卫
     * 创建日期:   19:54 2019/11/07
     * 方法介绍:     根据id 修改设备状态
     * 参数说明:   No such property: code for class: Script1
     * @return     com.xoa.util.lims.LimsJson
     */
    @RequestMapping("/updateByEquipReparlog")
    @ResponseBody
    public LimsJson updateByEquipReparlog(HttpServletRequest request, String repairStatus ,String equipStatuasCode, Integer repalogId){
        return equipReparlogService.updateByEquipReparlog(request,repairStatus,equipStatuasCode,repalogId);
    }

    /*/**
     * 创建作者:   李卫卫
     * 创建日期:   19:54 2019/11/08
     * 方法介绍:    新增设备的故障信息
     * 参数说明:   No such property: code for class: Script1
     * @return     com.xoa.util.lims.LimsJson
     */
    @RequestMapping("/insertEquipReparlog")
    @ResponseBody
    public LimsJson<LimsEquipReparlog> insertEquipReparlog(HttpServletRequest request, LimsEquipReparlog limsEquipReparlog,String attachId,String attachName){
        return  equipReparlogService.insertEquipReparlog(request,limsEquipReparlog,attachId,attachName);
    }

    /**
     * 创建作者:   李卫卫
     * 创建日期:   19:54 2019/11/07
     * 方法介绍:     修改 根据设备id修改页面的基本数据信息   完成
     * 参数说明:   No such property: code for class: Script1
     * @return     com.xoa.util.lims.LimsJson
     */
    @RequestMapping("/updateEquipReparlog")
    @ResponseBody
    public LimsJson updateEquipReparlog(HttpServletRequest request, LimsEquipReparlog  equipReparlogMapper,String attachId,String attachName){
        return equipReparlogService.updateEquipReparlog(request,equipReparlogMapper,attachId,attachName);
    }

    /**
     * 创建作者:   李卫卫
     * 创建日期:   19:54 2019/11/07
     * 方法介绍:   根据设备状态查询数据
     * 参数说明:   No such property: code for class: Script1
     * @return     com.xoa.util.lims.LimsJson
     */

    @RequestMapping("/selectEquipReparlogs")
    @ResponseBody
    public LimsJson selectEquipReparlogs (HttpServletRequest request ,String repairStatus ,Integer page, Integer  limit){
        return equipReparlogService.selectEquipReparlogs(request,repairStatus,page,limit);
    }


    /**
     * 创建作者:   李卫卫
     * 创建日期:   19:54 2019/11/07
     * 方法介绍:   根据设备状态查询数据
     * 参数说明:   No such property: code for class: Script1
     * @return     com.xoa.util.lims.LimsJson
     */
    @RequestMapping("/updateByPrimaryKeySelective")
    @ResponseBody
    public LimsJson updateByPrimaryKeySelective (HttpServletRequest request,LimsEquipReparlog limsEquipReparlog){
        return equipReparlogService.updateByPrimaryKeySelective(request,limsEquipReparlog);
    }

    /**
     *
     * @作者 李卫卫
     * @创建日期 20:07 2019/11/27
     * @类介绍 编辑按钮查询全部
     * @参数
     * @return limsJson
     */

    @RequestMapping("/selectByReparlog")
    @ResponseBody
    public LimsJson selectByPrimaryKey(HttpServletRequest request, Integer repalogId){
        return equipReparlogService.selectByPrimaryKey(request,repalogId);
    }

    /**
     *
     * @作者 李卫卫
     * @创建日期 11:19 2019/12/1
     * @类介绍 根据设备类型查询不同类型数据
     * @参数
     * @return limsJson
     */

    @RequestMapping("/selectAllReparlog")
    @ResponseBody
    public LimsJson selectAllReparlog (Integer equipTypeId,String repairStatus,Integer page,Integer limit){
        return equipReparlogService.selectAllReparlog(equipTypeId,repairStatus,page,limit);
    }

    /**
     *
     * @作者 李卫卫
     * @创建日期 9:02 2019/12/5
     * @类介绍 根据代码主类型查询故障分类维修方式维修等级
     * @参数
     * @return limsJson
     */
    @RequestMapping("/selectAllCommonCode")
    @ResponseBody
    public LimsJson selectAllCommonCode(String parentTyepNo){
        return equipReparlogService.selectAllCommonCode(parentTyepNo);
    }

    /**
     *
     * @作者 李卫卫
     * @创建日期 10:38 2019/12/9
     * @类介绍 根据id单独删除附件
     * @参数
     * @return limsJson
     */
    @RequestMapping("/deleteByPrimaryKey")
    @ResponseBody
    public LimsJson deleteByPrimaryKey(Integer fileId){
        return equipReparlogService.deleteByPrimaryKey(fileId);
    }


    /**
     *
     * @作者 李卫卫
     * @创建日期 15:29 2019/12/24
     * @类介绍  根据设备id查询设备记录
     * @参数
     * @return limsJson
     */

    @RequestMapping("/selectByequipId")
    @ResponseBody
    public LimsJson selectByequipId(Integer page, Integer limit, LimsEquipReparlog repair,String beginTime,String endTime){
        return equipReparlogService.selectByequipId(page,limit,repair,beginTime,endTime);
    }

    /**
     *
     * @作者 李卫卫
     * @创建日期 10:40 2019/11/29
     * @类介绍  根据 所属独立结算组织ID《deptId》和设备类型ID 《equipTypeId》查询数据
     * @参数
     * @return limsJson
     */
    @RequestMapping("/showEqip")
    @ResponseBody
    public LimsJson showEqip(Integer deptId,Integer equipTypeId,Integer page,Integer limit,String columnName,String inputValue,String eventType){
        return equipReparlogService.selectEquip(deptId,equipTypeId,page,limit,columnName,inputValue,eventType);
    }
}
